System and method for handling undesired communication at a mobile device

ABSTRACT

An approach for handling undesired communication at a mobile device is disclosed. A call scoring platform detects a request for delivery of a communication from an originator to a recipient. The call scoring platform then collects data feeds from data sources associated with the communication, the originator, the recipient, or a combination thereof and based on the data feeds, a score is computed for the communication, the originator, or a combination thereof. Further, based on the computed score filtering and/or blocking of delivery of the communication to the recipient is initiated. In addition, the call scoring platform creates a personal scoring system for one or more users wherein the users may assign scores for an incoming communication.

BACKGROUND INFORMATION

Telecommunication service providers and device manufacturers (e.g.,wireless, cellular, etc.) are continually challenged to deliver valueand convenience to consumers by, for example, providing compellingtelecom subscriber services. One area of interest has been thedevelopment of services that enable users to handle nuisance orundesired communication such as, telephone calls and/or messagesreceived at mobile devices. Some of the nuisance communication mayinclude a telemarket communication, an advertisement communication,promotional communication, crank calls, wrong numbers, calls fromacquaintances, etc. In particular, users do not desire to indulge intosuch communication if they are received too frequently or if they occurat inappropriate time such as, when the users are engaged in otheractivities (e.g., meeting, sleeping, etc.).

Further, different users have different opinions about these calls, forexample, for a particular user, a telemarketing call may be a nuisancecall, but on the other hand, such calls may be useful for other users.Generally, in order to block these calls, various telecom serviceproviders provide subscriber services such as, Do-Not-Disturb (DND)service to their users. However, the users have to pay a certain amountof fees to the service providers to activate these services andsometimes important calls may be automatically rejected after activatingthe DND service. Further, conventional techniques for call blocking mayalso enable users to manually block each of undesired phone numbers.However, individually blocking calls from each of the undesired phonenumbers is a time-consuming process. Further, it is very cumbersome forthe users to unblock previously blocked phone numbers. Moreover, usersare hesitant to receive calls from unknown sources, since these types ofcalls are majorly promotional calls descending from the user's interest.Further, users tend to receive nuisance calls from unknown callers sinceno prior information associated with these callers is known to the user.

Based on the foregoing, there is a need for providing a mobileapplication to handle undesired communication at user mobile devices.

BRIEF DESCRIPTION OF THE DRAWINGS

Various exemplary embodiments are illustrated by way of example, and notby way of limitation, in the figures of the accompanying drawings inwhich like reference numerals refer to similar elements and in which:

FIG. 1 is a diagram of a system capable of handling undesiredcommunication at a mobile device, according to one embodiment;

FIG. 2 is a diagram of components of a call scoring platform forhandling undesired communication at the mobile device, according to oneembodiment;

FIGS. 3 and 4 are flowcharts of a process for handling of undesiredcommunication at the mobile device, according to one embodiment;

FIG. 5 is a flowchart of a process for calculating scores for recipientsof undesired communication, according to one embodiment;

FIG. 6 is a flowchart of a process for handling an undesired message andredefining a score of the message, according to one embodiment;

FIGS. 7 and 8A-8C are diagrams of a Graphical User Interface (GUI) of anapplication for handling undesired communication on the mobile device,according to one embodiment;

FIG. 9 is a diagram of a computer system that can be used to implementvarious exemplary embodiments; and

FIG. 10 is a diagram of a chip set upon which an embodiment of theinvention may be implemented, according to one embodiment.

DESCRIPTION OF THE PREFERRED EMBODIMENT

An apparatus, method, and system for providing a mobile application tofilter and/or block undesired communication at a mobile device of auser, is described. In the following description, for the purposes ofexplanation, numerous specific details are set forth in order to providea thorough understanding of the embodiments of the invention. It isapparent, however, to one skilled in the art that the embodiments of theinvention may be practiced without these specific details or with anequivalent arrangement. In other instances, well-known structures anddevices are shown in block diagram form in order to avoid unnecessarilyobscuring the embodiments of the invention. Although the variousexemplary embodiments are described with respect to a mobile device, itis contemplated that these embodiments have applicability to otherarchitectures.

FIG. 1 is a diagram of a system 100 capable of handling undesiredcommunication at a mobile device. In one scenario, the handling of theundesired communication, may include, but is not restricted to,filtering of undesired communication, blocking of undesired calls, or acombination thereof. In one embodiment, a type of the communication mayinclude, but is not restricted to, a voice call, a voice message, aShort Message Services (SMSs), a Multimedia Messaging Services (MMSs),an Instant Message (IM), a Voice over Internet Protocol (VoIP) call, anemail, and so forth. For the purpose of illustration, the system 100employs, in certain embodiments, user equipment 101 a-101 n, hereinafterreferred to as mobile device 101. In one embodiment, the mobile device101 may include, but are not restricted to cellular phones, smartphones, and the like. The mobile device 101 may further includeapplications 103 a-103 n, hereinafter referred to as an application 103.In one implementation, all incoming communication to the mobile device101 may be received by the application 103. The application 103 isconfigured to filter and/or block incoming nuisance or undesiredcommunication to the mobile device 101. In one embodiment, theapplication 103 may be considered as a Graphical User Interface (GUI) ofthe mobile device 101 that provides options to recipients of an incomingcommunication to answer/receive a communication, reject thecommunication, edit caller information and/or originator list, assign ascore to the communication, a score threshold to the communication,block an incoming communication from an originator, or a combinationthereof. In one embodiment, a user may rate a call by assigning a score,for example, a user may assign a score of 9/10 for a call from hismother. By assigning a score to a call a user allocates value to a call.On the other hand, a score threshold may represent the level at which anaction occurs for a call, for example, a user may set a threshold forcalls by setting a rule to let any calls rated 9/10 and higher throughat any time. In such manner, the user is blocking calls with an assignedscore less than 9/10. In one scenario, when a user receives a call,he/she may take action based on the threshold, either manually orautomatically. Further, the application 103 may enable users of themobile device 101 to define the score (e.g., 2, 3, 5, etc.) to theincoming communication. In one scenario, the score may determineusefulness and/or relevancy of the communication to the recipient. Also,the application 103 enables recipients to manually provide the score toa list of originators and/or callers stored in the mobile device 101.For example, the recipient may provide the score to each of theoriginators in a contact list of the mobile device 101. In anotherembodiment, the application 103 may also enable recipients to define thescore to communication received from unknown callers. Based on the scorethreshold, the application 103 determines handling of communication fromthe originators. In one implementation, the score and/or scorethresholds defined by the recipients to the communication received fromthe originators are stored in a database 117. In certain embodiments,the application 103 may also be referred to as a caller scoringapplication 103. In another embodiment, if a recipient accepts thecommunication, an aggregated score, hereinafter referred to as a scoreis automatically updated (an increase in value of the score) in adatabase 117 associated with the application 103 for that particularcommunication and/or originator of the communication, or a combinationthereof. In another embodiment, the score of the message isautomatically updated (decrease in value of a score) in a database 117if the recipient rejects the communication.

In another embodiment, the application 103 may also enable recipients toassign the score to originators (stored in the mobile device 101). Thisscore is used to filter and/or block communication delivery from theoriginators. For example, recipients may block and/or unblock anoriginator for a certain period of time (e.g., a week, a month, etc.).Furthermore, the application 103 may enable recipients to override thescore associated with the originators. In one embodiment, the recipientmay manually change the score for the originator by using theapplication 103.

Further, the mobile device 101 may use sensors 105 a-105 n, hereinafterreferred to as a sensor 105, to communicate with a call scoring platform115 through various wireless networks 107-113. By way of example, thesensors 105 may be any type of sensor. In certain embodiments, thesensors 105 may include, for example a network detection sensor fordetecting wireless signals or receivers for different short-rangecommunications (e.g., Bluetooth, Wi-Fi, Li-Fi, near field communicationetc.). For illustrative purposes, the networks 107-113 may be anysuitable wireless networks, and are managed by service providers. Forexample, a telephony network 107 may include, but is not restricted to,a circuit-switched network, such as the Public Switched TelephoneNetwork (PSTN), an Integrated Services Digital Network (ISDN), a PrivateBranch Exchange (PBX), or other like networks. Although depicted asseparate entities, the networks 107-113 may be completely or partiallycontained within one another, or may embody of the aforementionedinfrastructures. For instance, a service provider network 109 may embodycircuit-switched and/or packet-switched networks that may includefacilities to provide for transport of circuit-switched and/orpacket-based communications. It is further contemplated that thenetworks 107-113 may include components and facilities to providesignaling and/or bearer communications between the various components orfacilities of the system 100. In this manner, the networks 107-113 mayembody or include portions of a signaling system 7 (SS7) network, orother suitable infrastructure to support control and signalingfunctions. In addition, the system 100 may operate as separate partsthat rendezvous and synchronize periodically to form a larger systemwith similar characteristics.

Further, data network 111 may be any Local Area Network (LAN),Metropolitan Area Network (MAN), Wide Area Network (WAN), the Internet,or any other suitable packet-switched network, such as a commerciallyowned, proprietary packet-switched network, such as a proprietary cableor fiber-optic network. Further, wireless network 113 may employ varioustechnologies including, for example, Code Division Multiple Access(CDMA), Enhanced Data Rates For Global Evolution (EDGE), General PacketRadio Service (GPRS), Mobile Ad Hoc Network (MANET), Global System ForMobile Communications (GSM), 4G Long-Term Evolution (LTE), InternetProtocol Multimedia Subsystem (IMS), Universal Mobile TelecommunicationsSystem (UMTS), etc., as well as any other suitable wireless medium,e.g., microwave access (WiMAX), Wireless Fidelity (WiFi), satellites,and the like.

Further, the call scoring platform 115 may filter and/or block deliveryof the undesired communication at the mobile device 101. In oneembodiment, the application 103 may communicate with the call scoringplatform 115 to retrieve information that aid in filtering and/orblocking the delivery of the undesired communication on the mobiledevice 101. The information may include, but is not restricted to, anoriginator's name, an originator's phone number, a communication type(e.g., a voice call, a SMS, a MMS, an email, etc.), a communicationcontent, and the like. The information may be stored in the database117, in an embodiment. Further, the database 117 may store profile ofusers and/or subscribers that have downloaded the application 103 ontheir mobile device 101. The profile of the users may include, but isnot restricted to, a name, a phone number, an alternate phone number, anemail address, a status of the user (block/unblock), a score ofcommunication, etc. In one embodiment, the score of a communication is ascore that is computed by the call scoring platform 115 based on scoredefined by other recipients of the communication by using theapplication 103. In one embodiment, the database 117 may also store thedata feeds associated with the communication, the originator, therecipient, or a combination thereof. Further, the call scoring platform115 may generate the score of the communication based on source of thecommunication which is also stored in the database 117. In anembodiment, the score may be generated based on a communication source,for example, a phone number, an email address, and the like.

In another embodiment, the call scoring platform 115 receives the scorefrom the recipient of the communication, the originator, or acombination thereof, and then computes a score for the communication,the originator, or a combination thereof. This score is stored in thedatabase 117 and is provided to the users of the application 103 asadditional information associated with communication originators. In onescenario, the recipient of the communication may provide the score to anoriginator of the communication by accepting and/or rejecting thecommunication. In another embodiment, the recipient may provide thescore to the communication, the originator, or a combination thereof byselecting an update score button (not shown) in the application 103.

Further, the call scoring platform 115 may collect data feeds associatedwith the communication, the originator, the recipient, or a combinationthereof. In one embodiment, the data feeds may include, but are notrestricted to, contextual information, trust level information, nuisancecaller information, organization information, or a combination thereof.Further, the call scoring platform 115 may calculate an individualscore, a score, or a combination thereof for recipients of thecommunication from an originator. In another embodiment, the callscoring platform 115 may collect data feeds, a score, or a combinationthereof from the recipients in order to update the score of theoriginator, the recipient, the communication, or a combination thereofin the database 117. Further, the database 117 may also store analgorithm to compute scores of the originators. The call scoringplatform 115 is further explained in FIG. 2.

In one embodiment, the application 103 may further present anotification to the recipient about an incoming communication requestand its associated score. The notification may include, but is notrestricted to, a first option to receive the communication (e.g., amessage), a second option to update the score, a third option to processthe communication according to a preset rule, a fourth option tocategorize the communication and/or the originator of the communication,or a combination thereof. In one implementation, the preset rule mayspecify criteria for the delivery of the communication to the mobiledevice 101. The criteria are based on, but are not restricted to, arelevancy of the communication, a relevancy of the originator, apopularity level of the communication, a popularity level of theoriginator, or a combination thereof. In another embodiment, a callscoring platform 115 may assign scores and/or score thresholds to one ormore calls based, at least in part, on call categories, call numbers,reputation of the scorer, or a combination thereof. In one exampleembodiment, a call scoring platform 115 may receive a call for deliveryto a recipient. Then, the call scoring platform 115 may process the callto determine its category. Subsequently, the call scoring platform 115may forward the call to the recipient upon determination that the callfalls under the category approved by the user.

Further, third party database 119 a-119 n, hereinafter referred to as athird party database 119, may store information associated with theoriginators. In one embodiment, the third party database 119 may storeinformation associated with commercial callers such as, telemarketingcallers, advertising agencies, contact centers, and the like.

FIG. 2 is a diagram of components of the call scoring platform 115 forhandling (filtering and/or blocking) delivery of undesired communicationat the mobile device 101, according to one embodiment. The call scoringplatform 115 may include a call source identifier module 201, a scoreprocessing module 203, a filtering module 205, a comparison module 207,and a user interface module 209.

The call source identifier module 201 may determine a request fordelivery of a communication from an originator to a recipient. In oneembodiment, the communication may include, but is not restricted to, avoice call, a voice message, a Short Message Service (SMS), a MultimediaMessaging Service (MMS), an instant message (IM), an email, a Voice overInternet Protocol (VoIP), and the like. Further, the call sourceidentifier module 201 may identify details of the originator of thecommunication. The details of the originator may include, but are notrestricted to, a name, a phone number, a score provided by otherrecipients, the score provided by the recipient to the originator, orcombination thereof. In one embodiment, the originator may be an unknownperson, an organization, a contact center, a telemarketer, a familymember, and the like.

The call source identifier module 201 may further identify data feedsassociated with the communication, the originator, and the recipient.The data feeds may include, but are not restricted to, contextualinformation, trust level information, nuisance originator information,organization information, or a combination thereof. In one embodiment,the identified data feeds may be received from multiple sources suchassociated with recipients, phone numbers, email addresses, and thelike. Further, the call source identifier module 201 may also identifyan individual score, a score, or a combination thereof, for therecipient, the originator, the communication, or a combination thereof.In one embodiment, the call source identifier module 201 may collect anindividual score of the originator, which may be previously provided bythe recipient of the communication to the originator, the communication,or a combination thereof. If the originator is an unknown person then ascore of the person provided by other recipients is retrieved by thecall source identifier module 201, in another embodiment. In yet anotherembodiment, the call source identifier module 201 may identify a statusof the originator and/or communication. The status may include, but isnot restricted to, blocked, unblocked, blocked for a particular duration(blocked for 2 hours, blocked for a week, unblock after 5 hours), andthe like.

Further, the call source identifier module 201 may identify preset rulesassociated with the communication. In one implementation, the presetrules may specify criteria for the delivery of the communication to therecipient. The criteria are based on, but are not restricted to, arelevancy of the communication, a relevancy of the originator, apopularity level of the communication, a popularity level of theoriginator, or a combination thereof. For example, a recipient maydefine a preset rule such as “block all calls starting with number+XYZ”. In one embodiment, the call source identifier module 201 maycause a parsing of an incoming call based on preset rules, whereinpreset rules include reputation of a scoring group or a person, forexample, a user may trust ABC call scoring group. Then, the call scoringplatform 115 may forward an incoming call to a recipient based on thescore given by ABC call scoring group.

The score processing module 203 may enable the recipient to assign thescore to the communication, the originator, or a combination thereof. Inone embodiment, the recipient may define the score threshold and/or arating to the communication, the originator, or a combination thereof.In one embodiment, the score may be assigned to a plurality oforiginators or communication thereof, such as numerical ratings (e.g.,10, 44, 75, 4/5, 8/10, etc.), star ratings (e.g., 2 star, 4 star, etc.),and the like. For example, the recipient of the communication may assigna score between a range of 1-100 to the communication received from theoriginator. In another embodiment, the recipient may assign the score toa phone number from which the communication has originated. Further, thescore processing module 203 may enable the recipient to override thescore of the communication, the originator, or a combination thereof. Inone embodiment, the recipient may manually update the score of thecommunication, the originator, or a combination thereof by using theapplication 103. In another embodiment, the score of the communication,the originator, or a combination thereof may be updated based on therecipient's action (e.g., accepting and/or rejecting the message).Further, based on the recipient's action, the score threshold and ascore of the communication, the originator, or a combination thereof maybe updated.

The score processing module 203 may collect the identified data feedsassociated with the communication, the originator, and the recipientfrom multiple sources. In one embodiment, the sources may include, butis not restricted to, a user, a phone number, a database (such asdatabase 117), a third party database (such as third party database119), and the like. Further, the score processing module 203 maycalculate an individual score of the communication, the originator, or acombination thereof for the recipient and other recipients of themessage. In another embodiment, the score processing module 203 maycalculate a collective score of the communication, the originator, or acombination thereof for the recipient and other recipients of thecommunication. In one embodiment, the score processing module 203 maycalculate the individual score and/or a score based on the collecteddata feeds and/or score associated with the communication, theoriginator, and the recipient. Further, the score processing module 203may calculate and update the individual scores and/or the scores of thecommunication, the originators, the recipients, or a combination thereofin the database 117 in a real-time environment.

The filtering module 205 may filter and/or block delivery of undesiredcommunication to the mobile device 101 based on individual scores storedin the database 117. In one embodiment, the individual score is providedby the recipient of the communication. For example, if an individualscore provided by a recipient to an advertisement message is 3 then theadvertisement message is filtered and/or blocked by the filtering module205. Further, the filtering module 205 may filter and/or blockcommunications based on the scores of the communication stored in thedatabase 117. In one embodiment, the score may be calculated by thescore processing module 203 based on the individual scores provided bythe recipients of the communication. For example, if the score of thecommunication is 5/10 then the communication is filtered and/or blockedby the filtering module 205. On the other hand, if the score of thecommunication is 10/10 provided by other recipients then thecommunication is delivered to the recipient.

Further, the filtering module 205 may filter and/or block communicationbased on the status of the originator of the communication. The statusof the originator may include, but is not restricted to, blocked,unblocked, blocked for 2 hours, blocked for a week, unblock after 5hours, and the like. In one embodiment, the status of the originator maybe provided by the recipient of the communication. For example, if therecipient is in a meeting, then the recipient may block a call from afriend for an hour. Further, the filtering module 205 may filter and/orblock delivery of undesired communication based on the preset rules. Inone embodiment, the preset rule may specify, but is not limited to, arelevancy of the communication, a relevancy of the originator, apopularity level of the communication, a popularity level of theoriginator, or a combination thereof. Further, the filtering module 205may categorize the communication and/or originator of the communicationbased on the preset rules.

The comparison module 207 may compare the score of the communicationwith the score threshold, in one embodiment. In one embodiment, thecomparison module 207 may compare the score provided by the recipientwith the score computed by the score processing module 203. For example,if the score of the communication is 3/5 and the score provided by theuser is 2/5, then the score of the communication is compared and is thenfiltered and/or blocked.

The user interface module 209 may generate notifications to therecipients. In one embodiment, the notifications may indicate a requestfor the delivery of the communication and the scores (e.g., score,individual score, etc.) of the communication to the recipient. In oneembodiment, the notification may include, but is not restricted to, afirst option to receive the communication, a second option to update thescore, a third option to process the communication according to a presetrule, a fourth option to categorize the communication or the originatorof the communication, or a combination thereof. Further, the userinterface module 209 may present the generated notifications to therecipient of the communication. In one embodiment, the notifications maybe displayed to the user at the time of communication delivery. Forexample, the notification may be displayed when an incoming voice callor message is delivered to the mobile device 101.

Further, the user interface module 209 may display notifications tochange the status of the originator. In one embodiment, if the status ofthe originator is “block the originator for 2 hours”, then after 2hours, a notification and/or an alert is displayed having options to,but is not limited to, unblock the originator, block for another 2hours, and the like. In one implementation, the notifications may be inthe form of, but is not limited to, beeps, vibrate, pop-ups, and thelike.

FIG. 3 is a flowchart for initiating filtering of undesiredcommunication delivery on the mobile device 101, according to anembodiment. The flowchart of FIG. 3 discloses a specific embodiment ofthe invention where the type of communication can be in the form of amessage. However, the type of communication may also include, but is notrestricted to, a voice call, a voice message, a Short Message Services(SMSs), a Multimedia Messaging Services (MMSs), an instant message (IM),a Voice over Internet Protocol (VoIP) call, an email, and so forth. Atstep 301, a call scoring platform 115 detects a request for a deliveryof a message from an originator to a recipient. In one embodiment, themessages may include, but is not restricted to, a voice call, a voicemessage, a Short Message Service (SMS), a Multimedia Messaging Service(MMS), and so forth. The originator of the message may be, but is notlimited to, a friend, a family member, a contact center, anorganization, a telemarketer, and the like.

At step 303, the call scoring platform 115 processes data feeds fromdata sources associated with the communication, and/or the originator,and/or the recipients of the communication. In one embodiment, the datafeeds may include, but is not restricted to, contextual information,trust level information, nuisance originator information, organizationinformation, or a combination thereof. In one implementation, the datafeeds may be received from data sources of the messages such as,recipients, phone numbers, email addresses, and the like. In anembodiment, the call scoring platform 115 may analyze the data feeds todetermine a score for the message and/or originator of the message.

Thereafter, at step 305, the call scoring platform 115 initiates afiltering and/or blocking of the delivery of the communication to therecipient based on the score. In one scenario, if the score of themessage is high, for example, 10/10, then the message is delivered tothe recipient. On the other hand, if the score of the message is low,for example, 3/10, then the delivery of the message to the recipient isblocked. In one embodiment, the score for the message is computed by thecall scoring platform 115 based on the data feeds and individual scoresassigned and/provided by other recipients of the message. Further, thecomputed score of the message, and/or the information associated withthe originator of the message, may be stored in the database 117.

FIG. 4 is a flowchart for initiating filtering and/or blocking ofdelivery of undesired communication to the mobile device 101, accordingto another embodiment. The flowchart of FIG. 4 discloses a specificembodiment of the invention where the type of communication may be inthe form of a message. However, the type of communication may alsoinclude, but is not restricted to, a voice call, a voice message, aShort Message Services (SMSs), a Multimedia Messaging Services (MMSs),an instant message (IM), a Voice over Internet Protocol (VoIP) call, andso forth. At step 401, a call scoring platform 115 presents anotification on the mobile device 101. The notification may indicate adelivery request of a message, a score associated with the message, or acombination thereof. In one embodiment, the score may be a score that iscomputed by the call scoring platform 115 based on individual scoresassigned by other recipients of the message. The notification mayinclude, but is not restricted to, a first option to receive themessage, a second option to update the score associated with themessage, a third option to process the message according to a presetrule, a fourth option to categorize the message or the originator of themessage, or a combination thereof. In one implementation, the presetrule may specify criteria for the delivery of the message. The criteriaare based on, but are not restricted to, a relevancy of the message, arelevancy of the originator, a popularity level of the message, apopularity level of the originator, or a combination thereof.

At step 403, the call scoring platform 115 receives an input from therecipient to specify a score of the message for the recipient. In oneembodiment, the recipient of the message may assign the score to themessage based on a relevancy of the message to the recipient. Forexample, the recipient may define a score 2 to a message, if the messageis an advertisement of a machine tool, and the recipient may define ascore 9 to a message, if the message is an advertisement of apparels.Further, the specified score threshold to the message helps the callscoring platform 115 to determine handling of the received messages.

Further, the call scoring platform 115 enables the recipient to overridethe score of the message, the originator, or a combination thereof. Inone embodiment, the recipient may manually update the score of themessage, the originator, or a combination thereof by using theapplication 103. In another embodiment, the score of the message, theoriginator, or a combination thereof may be overridden based on therecipient's action (e.g., accepting and/or rejecting the message). Inanother embodiment, based on the recipient's action, the score of themessage, the originator, or a combination thereof may be updated.

Next, at step 405, the call scoring platform 115 compares the score tothe score threshold to initiate filtering and/or blocking of thedelivery of the communication to the recipient. In one embodiment, ifthe score of the message is less than the score threshold then thedelivery of the message is blocked, and the message is not received bythe recipient. In another embodiment, if the score of the message ismore than the score threshold assigned by the recipient, then themessage is filtered and is delivered to the mobile device 101 of therecipient.

In yet another embodiment, based on the computed score, the call scoringplatform 115 may automatically filter and/or block the message based onpreset rules defined by the recipient. For example, a recipient maydefine a preset rule such as “block all calls starting from 123 and456”. Further, based on the computed score, the score of the message isalso updated in the database 117, in one implementation.

FIG. 5 is a flowchart for calculating message scores for recipients,according to an embodiment. Although, the flowchart of FIG. 5 isexplained with message type communication, the communication may alsoinclude, but is not restricted to, a voice call, a voice message, aShort Message Services (SMSs), a Multimedia Messaging Services (MMSs),an instant message (IM), a Voice over Internet Protocol (VoIP) call, anemail, and so forth. At step 501, a call scoring platform 115 collectsdata feeds from the recipient of the message and other recipients of themessage. The data feeds may include, but is not restricted to,contextual information, trust level information, nuisance originatorinformation, organization information, or a combination thereof. In oneembodiment, the identified data feeds may be collected from multiplesources such associated with recipients, phone numbers, email addresses,and the like.

Further, the call scoring platform 115 collects a score associated withthe message from the recipient and/or recipients of the message. In oneembodiment, the score may be an individual score of the message that isassigned and/or defined by the recipient of the message. The individualscore for the message may be defined by the recipient of the messagebased on a relevancy of the message, status of the originator, relation(e.g., friend, family member, acquaintance, etc.) of the originator withthe recipient, or a combination thereof. The call scoring platform 115may collect the data feed, score, or a combination thereof to update ascore of the message for the recipients in the database 117.

At step 503, the call scoring platform 115 calculates an individualscore of the message for the recipients, in one embodiment. The callscoring platform 115 may calculate an individual score for each of therecipients based on the collected data feeds and score from therecipients. For example, if the score of the message is 7, and anindividual score 5 is assigned to the message by the recipient, then thescore of the message is revised based on the assigned score and furtherindividual score for recipients may also be calculated and modified.

FIG. 6 is a flowchart for filtering an undesired communication andredefining a score of the communication, according to an embodiment. Theflowchart of FIG. 6 is explained with message type communication, thecommunication may be any type of communication such as, but is notrestricted to, a voice call, a voice message, a Short Message Services(SMSs), a Multimedia Messaging Services (MMSs), an instant message (IM),a Voice over Internet Protocol (VoIP) call, and so forth. At step 601, acaller scoring application 103 receives an incoming message on a mobiledevice 101, in one embodiment. The message may include, but is notrestricted to, a voice call, a voice message, a Short Message Service(SMS), a Multimedia Messaging Service (MMS), an email, a Voice overInternet Protocol (VoIP), and the like. An originator of the message maybe, but is not limited to, a friend, a family member, a telemarketer, anorganization, a contact center, and the like.

At step 603, the caller scoring application 103 determines a messagescore for the incoming message. In one embodiment, the message score maybe a score of the incoming message. The score for the message may becomputed by a call scoring platform 115 based on data feeds, individualscores defined by other recipients, or a combination thereof. In oneimplementation, the data feeds may include, but is not restricted to,contextual information, trust level information, nuisance originatorinformation, organization information, or a combination thereof. In oneembodiment, the identified data feeds may be collected from multiplesources such associated with recipients, phone numbers, email addresses,and the like. Further, the caller scoring application 103 may retrievethe message score from the database 117 that is associated with the callscoring platform 115.

At step 605, the caller scoring application 103 displays the messagescore on the mobile device 101. In one embodiment, the caller scoringapplication 103 may present a notification for the message scoreassociated with the incoming message on the mobile device 101. Thenotification may include, but is not restricted to, a first option toreceive and/or accept the incoming message, a second option to updatethe score, a third option to process the incoming message according to apreset rule, a fourth option to categorize the incoming message or theoriginator of the incoming message, or a combination thereof. In oneimplementation, the preset rule may specify criteria for the delivery ofthe message. The criteria are based on, but are not restricted to, arelevancy of the incoming message, a relevancy of the originator, apopularity level of the incoming message, a popularity level of theoriginator, or a combination thereof.

Further, the caller scoring application 103 displays additionalinformation to the recipient of the incoming message. The additionalinformation may include, but is not limited to, a name of theoriginator, a status of the originator, a phone number, an emailaddress, and the like. In one implementation, the status of the messageand/or originator may include, but is not restricted to, blocked,unblocked, blocked for 2 hours, blocked for a week, unblock after 5hours, and the like.

At step 607, the caller scoring application 103 determines that theincoming message is accepted by the recipient and the process concludes.

At step 609, the caller scoring application 103 determines that theincoming message is to be handled based on preset rules (as discussedabove) defined by the recipient, in one embodiment. For example, therecipient defined a preset rule that “reject all calls fromacquaintances for 30 minutes” then the incoming message is handled basedon the preset rule defined by the recipient.

Thereafter, at step 611, the caller scoring application 103 blocksand/or rejects all the incoming messages based on the preset ruledefined by the recipient. For example, the recipient may define presetrule as all the incoming messages from the acquaintances areautomatically rejected for next two hours. Next, at step 613, the callerscoring application 103 redefines or updates the score of the incomingmessage based on the recipient's action. The recipient's action mayinclude, but is not limited to, accepting and/or receiving the incomingmessage, rejecting the incoming message, ignoring the incoming message,and the like. Further, the caller scoring application 103 transmits theredefined message score to the call scoring platform 115 for storing theredefined score in the database 117.

FIG. 7 is a diagram of a Graphical User Interface (GUI) of the callerscoring application 103 running on a mobile device 101, according to oneembodiment. On a mobile device 701, the caller scoring application 103is running. A home tab 703 of the caller scoring application 103displays a home screen that displays a welcome message 705 and anothermessage indicating that the caller scoring application 103 is installedon the mobile device 701. In one embodiment, the mobile device 701 maybe a mobile device 101 as disclosed in FIG. 1. Further, a runapplication button 707 is displayed on the mobile device 701. When theuser clicks on the run application button 707, the caller scoringapplication starts operating in the mobile device 701. In an embodiment,the caller scoring application 103 operates in background of the mobiledevice 701 and uses minimal resources and power of the mobile device701. Further, if the user desires to cancel the operation of the callerscoring application 103 in the mobile device 701, the user may thenclick on a cancel button 709.

When an incoming message, for example, a voice call is detected thenadditional information about the message and its originator is displayedin the home screen on the mobile device 701. As shown in the FIG. 7, anincoming call from “Joana Doe” is detected and additional information711 such as, name (“Joana Doe”) of the originator of the voice call,score of the voice call and/or “Joana Doe”, individual score assigned bythe recipient to “Joana Doe”, a status of “Joana Doe”, or a combinationthereof, is displayed on the mobile device 701. Further, an answerbutton 713 is displayed on the mobile device 701 that enables therecipient of the voice call from “Joana Doe” to accept and/or receivethe voice call. Also, the recipient of the voice call may reject and/orignore the incoming voice call by clicking on a reject button 715displayed on the caller scoring application 103.

Further, when the recipient of the incoming message clicks on callerinfo tab 717 then information 719 associated with the incoming call isdisplayed to the recipient by the caller scoring application 103. Theinformation 719 may include, but is not restricted to, a name of theoriginator, a phone number of the originator, a score stored in thedatabase 117 associated with the call scoring platform 115, anindividual score that is previously defined by the recipient to theoriginator and/or call, a status of the originator, and a combinationthereof. In one embodiment, the status of the originator may include,but is not restricted to, blocked, unblocked, blocked for 2 hours,blocked for a week, unblock after 5 hours, and the like. The recipientof the incoming message may change the individual score of the calland/or originator by clicking on a change score button 721. Also, therecipient of the incoming call may change the status of the originator(e.g., blocked to unblock or unblocked to block, etc.) by clicking on ablock/unblock button 723. The recipient may further navigate to aprevious screen or the home screen by clicking on a back button 725.

FIGS. 8A-8C are diagrams of a Graphical User Interface (GUI) of thecaller scoring application 103 running on a mobile device 801, accordingto another embodiment. In FIG. 8A, when a user operates a caller scoringapplication 103 on a mobile device 801, a home tab 803 is displayed. Thehome screen of the caller scoring application 103 displays a welcomemessage 805 to the user. The user may then continue operating the callerscoring application 103 by clicking on a continue button 807. Also, theuser may close and/or cancel the caller scoring application 103 byclicking on a cancel button 809.

Further, a caller list tab 811 displays a list of callers to the user ofthe mobile device 801. The list of callers may include, but is notlimited to, a list of contacts stored in the mobile device 801, a listof calls received from unknown callers, a list of calls received fromfamily members, and/or friends, and the like. As shown in the FIG. 8A, acaller “Joana Doe” 813 and a caller “Joyce Doe” 817 are displayed andthe caller's information is already stored in the mobile device 801.Also, a list of unknown callers (e.g., their phone numbers) is displayedsuch as, a caller having phone number “3333333333” 815 and anothercaller having phone number “4444444444” 819. Further, the user may editdetails of these callers by clicking on an edit caller button 821 or theuser may navigate back to the home screen by clicking on a back button823.

Further, when the user selects a caller from the list and then clicks onthe edit caller button 821, the user is then navigated to a caller infotab 825 and caller information 827 is displayed on the mobile device801. The caller information 827 may include, but is not restricted to, aname of the caller, a phone number of the caller, a score of the callerstored in the database 117 associated with the call scoring platform115, an individual score that is previously defined by the user to thecaller and/or message, a status of the caller, and a combinationthereof. In one scenario, the caller may be an originator of a message.In one embodiment, the status of the originator may include, but is notrestricted to, blocked, unblocked, blocked for 2 hours, blocked for aweek, unblock after 5 hours, and the like. The user of the mobile device801 may change the individual score of the caller by clicking on achange score button 829. Also, the user of the mobile device 801 maychange the status of the originator (e.g., blocked to unblock orunblocked to block, etc.) by clicking on a block/unblock button 831. Inone embodiment, the user may change the status and/or other informationof blocked callers stored in the database 117 having a list of theblocked callers. The user may further navigate back to a screen thatdisplays the list of the callers by clicking on a back button 833.

The user may edit the caller information 835 displayed on the mobiledevice 801, as shown in FIG. 8B. The user of the mobile device 801 mayupdate the individual score of the caller by clicking on a change scorebutton 837. Also, the user of the mobile device 801 may change thestatus of the caller (e.g., blocked to unblock or unblocked to block,etc.) by clicking on a block/unblock button 839. The user may furthernavigate back to a screen that displays the list of the callers byclicking on a back button 841. As shown in the FIG. 8B, the user selectsthe status of the caller and then changed its status from unblocked toblocked by clicking on the block/unblock button 839.

In another embodiment, the user of the mobile device 801 may define anindividual score or may update the individual score previously assignedby the user to the originator. In one embodiment, the user may updatethe individual score of the message and/or the caller previously blockedby the caller scoring application 103 based on preset rules (e.g., blockcalls from friend for 2 hours). In an embodiment, the preset rules maybe defined by the users of the mobile device 801. The user selects theindividual score information 843 of the caller and updates theindividual score of the caller. The user may increase the individualscore of the caller by clicking on a raise button 845 or may decreasethe individual score of the caller by clicking on a lower button 847.For example, the user defines a score 20 to message received from thecaller “Joyce Doe”. The score contributes to a combined score for allusers, and may set a local value that takes priority over the combinedscore. In this manner a user's personal preference takes priority overthe scores of the masses. Further, the user may change the status of thecaller (e.g., from blocked to unblock or unblocked to block, etc.) byclicking on a block/unblock button 849. The user may navigate back to ascreen that displays the change score button 837 by clicking on a backbutton 851.

Next, the caller information also displays a combined score 853 of thecaller. In one embodiment, the combined score 853 is computed by thecall scoring platform 115 based on data feeds and individual scores ofthe caller received from the recipient and/or other recipients. When theinformation is edited by the user, then the user may save the changes byclicking on an apply button 855. Further, the user may change the statusof the caller (e.g., from blocked to unblock or unblocked to block,etc.) by clicking on a block/unblock button 857. The user may furthernavigate back to a screen that displays the raise and/or lower buttons845 and/or 847 or may cancel the changes by clicking on a back/cancelbutton 859.

FIG. 8C presents a home tab 861 that display incoming call information863 to the recipient of the incoming call. In one embodiment, theincoming call information 863 may include, but is not restricted to, aname of an originator, a status of the call, a score of the call and/ororiginator, an individual score of the call and/or originator assignedby the recipient, and the like. In one scenario, a call that is blockedby the call scoring platform 115 based on preset rules is received onthe mobile device 801. The caller scoring application 103 may thendisplay information 863 associated with the blocked incoming call on themobile device 801. For example, a recipient of the incoming call blocksall calls and/or messages from a telemarketer for 5 hours, and after 7hours another call is received from the telemarketer then the callerscoring application 103 delivers the call to the mobile device 801 anddisplays the blocked call information to the recipient after a settime-period (e.g., 6 hours) from the blocked caller list stored in thedatabase 117 to update information of the telemarketer in the database117. The recipient of the blocked call may then change settings for theblocked call. Further, the caller scoring application 103 may alsopresent options to the recipient to receive or reject the incoming callby clicking on an answer button 865 or an ignore button 867.

In one embodiment, the caller scoring application 103 may presentnotifications to the recipients of the blocked incoming communicationabout change in information for the blocked communication. For example,if a phone number of a blocked caller is changed and an incoming callfrom the blocked caller using the changed phone number is detected, thenthe caller scoring application 103 may present a notification about thechange in phone number to the recipient of the incoming call.

FIG. 9 illustrates a computing hardware (e.g., mobile system) 900 onwhich exemplary embodiments may be implemented. The mobile system 900includes a bus 901 or other communication mechanism for communicatinginformation and a processor 903 coupled to the bus 901 for processingthe information. The mobile system 900 also includes a main memory 905,such as a Random Access Memory (RAM) or other dynamic storage device,coupled to the bus 901 for storing the information and instructions tobe executed by the processor 903. The main memory 905 may also be usedfor storing temporary variables or other intermediate information duringexecution of instructions by the processor 903. The mobile system 900may further include a Read Only Memory (ROM) 907 or other static storagedevice coupled to the bus 901 for storing static information andinstructions for the processor 903. A storage device 909, such as amagnetic disk or an optical disk, is coupled to the bus 901 forpersistently storing information and instructions.

The mobile system 900 may be coupled via the bus 901 to a display 911,such as a Cathode Ray Tube (CRT), a liquid crystal display, an activematrix display, or a plasma display, for displaying information to themobile user. An input device 913, such as a keyboard includingalphanumeric and other keys, is coupled to the bus 901 for communicatinginformation and command selections to the processor 903. Another type ofa user input device may be a cursor control 915, such as a mouse, atrackball, or cursor direction keys, for communicating directioninformation and command selections to the processor 903 and forcontrolling cursor movement on the display 911.

According to an exemplary embodiment, the processes described herein areperformed by the mobile system 900, in response to the processor 903executing an arrangement of instructions contained in the main memory905. Such instructions may be read into the main memory 905 from anothercomputer-readable medium, such as the storage device 909. Execution ofthe arrangement of instructions contained in the main memory 905 causesthe processor 903 to perform the process steps described herein.Processors in a multi-processing arrangement may also be employed toexecute the instructions contained in the main memory 905. Inalternative embodiments, hard-wired circuitry may be used in place of orin combination with software instructions to implement exemplaryembodiments. Thus, exemplary embodiments are not limited to any specificcombination of hardware circuitry and software.

The mobile system 900 may also include a communication interface 917coupled to the bus 901. The communication interface 917 provides atwo-way data communication coupling to a network link 919 connected to aLocal Area Network (LAN) 921. For example, the communication interface917 may be a Digital Subscriber Line (DSL) card or modem, an IntegratedServices Digital Network (ISDN) card, a cable modem, a telephone modem,or any other communication interface to provide a data communicationconnection to a corresponding type of communication line. As anotherexample, the communication interface 917 may be a Local Area Network(LAN) card (e.g., for Ethernet™ or an Asynchronous Transfer Mode (ATM)network) to provide a data communication connection to a compatible LAN.Wireless links may also be implemented, in one embodiment. In any suchimplementation, the communication interface 917 sends and receiveselectrical, electromagnetic, or optical signals that carry digital datastreams representing various types of information. Further, thecommunication interface 917 may include peripheral interface devices,such as a Universal Serial Bus (USB) interface, a Personal ComputerMemory Card International Association (PCMCIA) interface, etc. Althougha single communication interface 917 is depicted in FIG. 9, multiplecommunication interfaces may also be employed.

The network link 919 typically provides data communication throughnetworks to other data devices. For example, the network link 919 mayprovide a connection through the LAN 921 to a host computer 923, whichhas connectivity to a network 925 (e.g., a Wide Area Network (WAN) orthe global packet data communication network now commonly referred to asthe “Internet”) or to data equipment operated by a service provider. TheLAN 921 and the network 925 both use electrical, electromagnetic, oroptical signals to convey information and instructions. The signalsthrough the various networks and the signals on the network link 919 andthrough the communication interface 917, which communicate digital datawith the mobile system 900, are exemplary forms of carrier waves bearingthe information and instructions.

The mobile system 900 may send messages and receive data, includingprogram code, through the network(s), the network link 919, and thecommunication interface 917. In the Internet example, a server (notshown) might transmit requested code belonging to an application programfor implementing an exemplary embodiment through the network 925, theLAN 921 and the communication interface 917. The processor 903 mayexecute the transmitted code while being received and/or store the codein the storage device 909, or other non-volatile storage for laterexecution. In this manner, the mobile system 900 may obtain applicationcode in the form of a carrier wave.

The term “computer-readable medium” as used herein refers to any mediumthat participates in providing instructions to the processor 903 forexecution. Such a medium may take many forms, including but not limitedto non-volatile media, volatile media, and transmission media.Non-volatile media may include, for example, optical or magnetic disks,such as the storage device 909. Volatile media may include a dynamicmemory, such as the main memory 905. Transmission media may includecoaxial cables, copper wire and fiber optics, including the wires thatinclude the bus 901. Transmission media may also take the form ofacoustic, optical, or electromagnetic waves, such as those generatedduring Radio Frequency (RF) and infrared (IR) data communications.Common forms of computer-readable media may include, for example, afloppy disk, a flexible disk, hard disk, magnetic tape, any othermagnetic medium, a CD-ROM, a Compact Disc-Rewritable (CDRW), a DigitalVideo Disk (DVD), any other optical medium, punch cards, paper tape,optical mark sheets, any other physical medium with patterns of holes orother optically recognizable indicia, a RAM, a PROM, and EPROM, aFLASH-EPROM, any other memory chip or cartridge, a carrier wave, or anyother medium from which a computer can read. In certain cases, thecomputer readable media may include an unknown physical componentwherein the information is uniquely defined by a special digital uniqueidentifier and is available through multiple physical channels eithersimultaneously or exclusively.

Various forms of computer-readable media may be involved in providinginstructions to a processor for execution. For example, the instructionsfor carrying out at least part of the exemplary embodiments mayinitially be borne on a magnetic disk of a remote mobile device. In sucha scenario, the remote mobile device loads the instructions into themain memory and sends the instructions over a telephone line using amodem. A modem of a local computer system receives the data on thetelephone line and uses an infrared transmitter to convert the data toan infrared signal and transmit the infrared signal to a portablecomputing device, such as a Personal Digital Assistant (PDA) or alaptop. An infrared detector on the portable computing device receivesthe information and instructions borne by the infrared signal and placesthe data on a bus. The bus conveys the data to a main memory, from whicha processor retrieves and executes the instructions. The instructionsreceived by the main memory can optionally be stored on storage deviceeither before or after execution by processor.

FIG. 10 illustrates a chip set 1000 upon which an embodiment of theinvention may be implemented. The chip set 1000 is programmed to presenta slideshow as described herein and includes, for instance, theprocessor and memory components described with respect to FIG. 9incorporated in physical packages (e.g., chips). By way of example, aphysical package may include an arrangement of materials, components,and/or wires on a structural assembly (e.g., a baseboard) to providecharacteristics such as physical strength, conservation of size, and/orlimitation of electrical interaction. It is contemplated that in certainembodiments the chip set 1000 can be implemented in a single chip.

In one embodiment, the chip set 1000 includes a communication mechanismsuch as a bus 1001 for passing information among the components of thechip set 1000. A processor 1003 has connectivity to the bus 1001 toexecute instructions and process information stored in, for example, amemory 1005. The processor 1003 may include processing cores with eachcore to perform independently. A multi-core processor enablesmultiprocessing within a single physical package. Examples of amulti-core processor may include two, four, eight, or greater numbers ofprocessing cores. Alternatively or in addition, the processor 1003 mayinclude microprocessors configured in tandem via the bus 1001 to enableindependent execution of instructions, pipelining, and multithreading.The processor 1003 may also be accompanied with specialized componentsto perform certain processing functions and tasks such as Digital SignalProcessors (DSP) 1007, or Application-Specific Integrated Circuits(ASIC) 1009. The DSP 1007 typically processes real-world signals (e.g.,sound) in real-time independently of the processor 1003. Similarly, theASIC 1009 may perform specialized functions not easily performed by ageneral purposed processor. Other specialized components to aid inperforming the inventive functions described herein include FieldProgrammable Gate Arrays (FPGA) (not shown), controllers (not shown), orother special-purpose computer chips.

The processor 1003 and accompanying components have connectivity to thememory 1005 via the bus 1001. The memory 1005 may include both a dynamicmemory (e.g., RAM, magnetic disk, writable optical disk, etc.) and astatic memory (e.g., ROM, CD-ROM, etc.) for storing executableinstructions that when executed perform the inventive steps describedherein to controlling a mobile device. The memory 1005 also stores thedata associated with or generated by the execution of the inventivesteps.

While the invention has been described in connection with a number ofembodiments and implementations, the invention is not so limited butcovers various obvious modifications and equivalent arrangements, whichfall within the purview of the appended claims. Although features of theinvention are expressed in certain combinations among the claims, it iscontemplated that these features can be arranged in any combination andorder.

What is claimed is:
 1. A method comprising: receiving a voice call, by amobile device of an intended recipient of the voice call, the voice callhaving been placed by an originator of the voice call to the recipient;determining a score for the voice call based on processing a pluralityof data feeds from a plurality of data sources associated with the voicecall and based on values that were previously input by the recipient,the values including: a first value for the originator of the voicecall, and a second value for a previous communication between theoriginator and the recipient; filtering, by the mobile device, deliveryof the voice call, to the recipient, based on the score, the filteringincluding presenting, in an incoming communication notification portionof the mobile device of the recipient, a visual notification indicating:the determined score for the voice call, a first option to receive thevoice call, a second option to reject the voice call, and a third optionto update the score.
 2. A method of claim 1, wherein the visualnotification additionally includes: a fourth option to process the voicecall according to a preset rule.
 3. A method of claim 2, wherein thepreset rule specifies criteria for the delivery of the voice call, andwherein the criteria are based on a relevancy of the voice call, arelevancy of the originator of the voice call, a popularity level of thevoice call, or a popularity level of the originator of the voice call.4. A method of claim 1, further comprising: receiving, from therecipient of the voice call, an input for specifying a score threshold;and comparing the score to the score threshold, wherein the filtering ofthe delivery of the voice call includes blocking delivery when the scoreis below the score threshold.
 5. A method of claim 1, wherein theplurality of data feeds include contextual information, trust levelinformation, nuisance caller information, organization information, or acombination thereof.
 6. An apparatus comprising: a non-transitorycomputer-readable medium containing program instructions; and aprocessor to execute the program instructions to: receive a voice callof an intended recipient of the voice call, the voice call having beenplaced by an originator of the voice call to the recipient; determine ascore for the voice call based on processing a plurality of data feedsfrom a plurality of data sources associated with the voice call andbased on values that were previously input by the recipient, the valuesincluding: a first value for the originator of the voice call, and asecond value for a previous communication between the originator and therecipient; filter delivery of the voice call, to the recipient, based onthe score, the filtering including presenting, in an incomingcommunication notification portion of the apparatus, a visualnotification indicating: the determined score for the voice call, afirst option to receive the voice call, a second option to reject thevoice call, and a third option to update the score.
 7. An apparatus ofclaim 6, wherein the notification additionally includes: a fourth optionto process the voice call according to a preset rule.
 8. An apparatus ofclaim 7, wherein the preset rule specifies criteria for the delivery ofthe voice call, and wherein the criteria are based on a relevancy of thevoice call, a relevancy of the originator of the voice call, apopularity level of the voice call, or a popularity level of theoriginator of the voice call.
 9. An apparatus of claim 6, the processorbeing further configured to: receive, from the recipient of the voicecall, an input for specifying a score threshold; and compare the scoreto the score threshold, wherein the filtering of the delivery of thevoice call includes blocking the delivery when the score is below thescore threshold.
 10. An apparatus of claim 6, wherein the plurality ofdata feeds include contextual information, trust level information,nuisance caller information, organization information, or a combinationthereof.
 11. A system comprising a platform implemented by instructionsstored in a non-transitory computer-readable medium, the instructions,when executed by one or more processors, to: receive a voice call of anintended recipient of the voice call, the voice call having been placedby an originator of the voice call to the recipient; determine a scorefor the voice call based on processing a plurality of data feeds from aplurality of data sources associated with the voice call and based onvalues that were previously input by the recipient, the valuesincluding: a first value for the originator of the voice call, and asecond value for a previous communication between the originator and therecipient; filter delivery of the voice call, to the recipient, based onthe score, the filtering including presenting, in an incomingcommunication notification portion of a mobile device, a visualnotification indicating: the determined score for the voice call, afirst option to receive the voice call, a second option to reject thevoice call, and a third option to update the score.
 12. A system ofclaim 11, wherein the instructions, when executed by the one or moreprocessors, are further to: receive, from the recipient of the voicecall, a score threshold; and compare the score to the score threshold,wherein the filtering of the delivery of the voice call includesblocking the delivery when the score is below the score threshold. 13.The method of claim 1, wherein the value input by the recipient is auser score associated with the originator of the voice call.
 14. Theapparatus of claim 6, wherein the value input by the recipient is a userscore associated with the originator of the voice call.
 15. The systemof claim 11, wherein the value input by the recipient is a user scoreassociated with the originator of the voice call.
 16. The method ofclaim 1, wherein, when the option to receive the voice call is selectedby the recipient, the score associated with subsequent communicationsfrom the originator is increased.
 17. The apparatus of claim 6, wherein,when the option to receive the voice call is selected by the recipient,the score associated with subsequent communications from the originatoris increased.
 18. The method of claim 1, further comprising: receiving aselection from the recipient of the first option to receive the voicecall; and updating the score, to increase a value of the score, based onthe selection from the recipient of the first option to receive thevoice call.
 19. The apparatus of claim 6, the processor being furtherconfigured to: receive a selection from the recipient of the firstoption to receive the voice call; and update the score, to increase avalue of the score, based on the selection from the recipient of thefirst option to receive the voice call.
 20. The system of claim 11,wherein the instructions, when executed by the one or more processors,are further to: receive a selection from the recipient of the firstoption to receive the voice call; and update the score, to increase avalue of the score, based on the selection from the recipient of thefirst option to receive the voice call.